home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / SAT 2.3.8 / Demos / Zkrolly demo ƒ / sXprite.p < prev    next >
Text File  |  1994-11-04  |  777b  |  52 lines

  1. unit sXprite;
  2.  
  3. interface
  4.  
  5.     uses
  6. {$ifc UNDEFINED THINK_PASCAL}
  7.         Types, QuickDraw, {}
  8. {$endc}
  9.         SAT;
  10.  
  11.     var
  12.         Xface: FacePtr;
  13.  
  14.     procedure InitXprite;
  15.     procedure SetupXprite (me: SpritePtr);
  16.     procedure HandleXprite (me: SpritePtr);
  17.  
  18. implementation
  19.  
  20.     const
  21.         xpeed = 2;
  22.  
  23.     procedure InitXprite;
  24.     begin
  25.         Xface := SATGetFace(130);
  26.     end;
  27.  
  28.     procedure SetupXprite (me: SpritePtr);
  29.     begin
  30.         me^.mode := 0;
  31.         me^.speed.h := xpeed;
  32.         me^.face := Xface;
  33.         me^.task := @HandleXprite;
  34.     end;
  35.  
  36.     procedure HandleXprite (me: SpritePtr);
  37.     begin
  38.         with me^ do
  39.             begin
  40.                 position.h := position.h + speed.h;
  41.                 if position.h > gSAT.offSizeH then {400}
  42.                     begin
  43.                         speed.h := -xpeed;
  44.                     end;
  45.                 if position.h < -20 then {50}
  46.                     begin
  47.                         speed.h := xpeed;
  48.                     end;
  49.             end;
  50.     end;
  51.  
  52. end.